package org.example.Thread01;

public class Dome_Thread02 {
    private static long count=1000000000l;
    public static void main(String[] args) throws InterruptedException {
        func1();//串行
        func2();//并行
    }

    private static void func2() throws InterruptedException {
        //记录开始时间
        long begin=System.currentTimeMillis();
        //创建第一个线程
        Thread t1=new Thread(()->{
            long a=0l;
            for(int i=0;i<count;i++){
                a++;
            }
        });
        //启动t1进程
        t1.start();
        //创建第二个线程
        Thread t2=new Thread(()->{
            long b=0l;
            for(int i=0;i<count;i++){
                b++;
            }
        });
        //启动t2进程
        t2.start();
        //等待t1和t2结束
        t1.join();
        t2.join();
        //记录结束时间
        long end=System.currentTimeMillis();
        System.out.println("并行执行耗时="+(end-begin));
    }

    private static void func1() {
        long begin=System.currentTimeMillis();
        long a=0l;
        for(int i=0;i<count;i++){
            a++;
        }
        long b=0l;
        for(int i=0;i<count;i++){
            b++;
        }
        long end=System.currentTimeMillis();
        System.out.println("串行执行耗时="+(end-begin));
    }

}

